package com.benshou.bsoa.dto.feikong.req;

import com.benshou.bsoa.dto.feikong.req.ApplyCostCenter;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

import java.util.List;

@Data
/**
 * 项目信息实体类
 */
public class ProjectInfo {

    /**
     * 项目状态（1=启用，0=停用）
     */
    private String projectStatus;

    /**
     * 项目负责人员工ID
     */
    private String empId;

    /**
     * 项目编码
     */
    @NotBlank
    private String projectCode;

    /**
     * 项目层级（如：1=一级项目，2=二级项目，3=三级项目）
     */
    private String projectLevel;

    /**
     * 项目阶段（如：1=立项，2=执行，3=关闭）
     */
    private String projectPhase;

    /**
     * 所属法人公司编码
     */
    @NotBlank
    private String corporationCode;

    /**
     * 上级项目编码（如果无父级可填“none”）
     */
    @NotBlank
    private String parentProjectCode;

    /**
     * 项目预算金额（单位：元）
     */
    private String projectBudget;

    /**
     * 项目名称
     */
    @NotBlank
    private String projectName;

    /**
     * 申请公司，多公司用英文逗号分隔
     */
    private String applyCompany;

    /**
     * 申请成本中心列表
     */
    private List<ApplyCostCenter> applyCostCenterList;

    /**
     * 项目成员列表
     */
    private List<ProjectMember> projectMemberList;
}
